1. Field of the Invention
The field of the invention relates to data storage cells for storing data.
2. Description of the Prior Art
There are many different types of data storage devices. There are ROM or read only memory cells which cannot be overwritten and are therefore used to store data permanently. There are also RAM or random access memory cells which can be overwritten and are therefore used to store data that can be changed.
Data storage is an important field and there are different types of both ROMs and RAMs. One common type of RAM is Static random access memory (SRAM). SRAM cells are a type of semiconductor memory which can be written to or read from in any order, regardless of the memory location that was last accessed and which use bistable latching circuitry so that they retain their data without the need to be periodically refreshed provided that they are powered.
FIG. 1 is a diagram illustrating an example construction of a 6T SRAM memory cell that may be used in an SRAM memory. As can be seen, the memory cell consists of two PMOS transistors 100, 110 and two NMOS transistors 120, 130. A node 140 is provided between the PMOS transistor 100 and the NMOS transistor 120, and similarly a node 150 is provided between the PMOS transistor 110 and the NMOS transistor 130. The inverted bit line BLN 180 is connected to the node 140 via an access transistor 160, and similarly the bit line BL 190 is connected to the node 150 via an access transistor 170.
The two sets of transistors 100, 110, 120 and 130 act as cross coupled inverters and thus, the device is a bistable device with two states that can be switched between. These two different states are a first state where the node 140 is at a ground potential and the node 150 is at a power supply potential VDD, and a second state where the node 140 is at the power supply potential VDD and the node 150 is at the ground potential.
In some circumstances it may be desirable to use RAM for storing programming code, for example while the code is being developed, but then once a desired form of code has been found then it may be more appropriate to store it in ROM so that it does not need to be reloaded into memory after power on. A disadvantage of changing the type of memory cell storing the code is that if the system has been developed using SRAM memory cells for storing the programming code, then replacing the SRAM with ROM will need a substantial redesign of the system. This redesign may mean that any previous testing and verification of the system may need to be redone.